
function valid_password(passwd) {
    var senhaMasc = /(?=.*[A-Z].*)(?=.*\d.*)(?=.*[a-z].*)(?=.*[#$%&@*].*).{5,}/;
    if (passwd.length > 8 || passwd.length < 5) {
        alert("A senha deve possuir entre 5 e 8 caracteres");
        return false;
    }
    if (!senhaMasc.test(passwd)) {
        alert("A senha deve conter pelo menos 1 letra maiúscula, 1 caractere especial" +
                "(não alfanumérico), 1 dígito e 1 letra minúscu");
        return false;
    }


    return true;
}

function valid_cad_user() {

    var filter_word = /^[A-Za-z ]+$/;
    var filter_number = /[1-9]/;
    var filter_phone = /^\(\d{2}\)\b9?\d{4}[-]?\d{4}$/;
    var filter_pass = /(?=.*\d).{1,8}/;
    var filter_email = /^[a-zA-Z0-9_.+-]+@[a-zA-Z0-9-]+\.[a-zA-Z0-9-.]+$/;
    var name = document.getElementById("name");
    var email = document.getElementById("email");
    var city = document.getElementById("city");
    var telephone = document.getElementById("telephone");
    var pass = document.getElementById("pass");
    var confirm_pass = document.getElementById("confirm-pass");
    var select = document.getElementById("state");
    var state = select.options[select.selectedIndex].value;

    replace_accents(city);
    replace_accents(name);

    if (name.lenght == 0 || name.value == "") {
        alert("Campo nome é obrigatório");
        name.value.toUpperCase();
        return false;
    }
    else if (!filter_word.test(name.value)) {
        alert("Somente letras são permitidas no campo \"Nome\"");
        return false;
    }
    else if (city.lenght == 0 || city.value == " ") {
        alert("Campo cidade é obrigatório");
        return false;
    }
    else if (!filter_word.test(city.value)) {
        alert("Somente letras são permitidas no campo \"Cidade\"");
        return false;
    }
    else if (state.lenght == 0) {
        alert("Selecione um estado");
        return false;
    }
    else if (!filter_phone.test(telephone.value)) {
        alert("O telefone deve estar no formato (XX)XXXX-XXXX");
        return false;
    }
    else if (!filter_email.test(email.value)) {
        alert("Campo \"Login\" incorreto");
        return false;
    }
    else if (!valid_password(pass.value)) {
        return false;
    }
    else if (pass.value != confirm_pass.value) {
        alert("As senhas fornecidas são diferentes");
        return false;
    } else if (!validDate()) {
        return false;
    }
	else if(name.value=="CLEITON"){
		alert("Usuario n\ão cadastrado");
		return false;
	}
    else
        return true;

}



function valid_cad_receita(obj) {
    var category = obj.categoria.options[obj.categoria.selectedIndex].value;

    if (obj.name.length == 0) {
        alert("Campo \"Nome\" obrigatório");
        return false;
    } else if (category.length == 0) {
        alert("Campo \"Categoria\" obrigatório");
        return false;
    } else if (obj.ingredientes.value == 0) {
        alert("Campo \"Ingredientes\" obrigatório");
        return false
    } else if (obj.val_nutri.value == 0) {
        alert("Campo \"Valor nutircional\" obrigatório");
        return false;
    }
}

function replace_accents(str) {
    var res = "";
    res = str.value.replace(/[á|ã|â|à]/gi, "a");
    res = res.replace(/[é|ê|è]/gi, "e");
    res = res.replace(/[í|ì|î]/gi, "i");
    res = res.replace(/[õ|ò|ó|ô]/gi, "i");

    res = res.toUpperCase();
    str.value = res;
}


function add_receita() {
    var num_receita = parseInt($("#num_rec").val());
    var code = "";
    num_receita++;
    code = "<div class='title'>Ingrediente " + num_receita + "</div>";
    code = code + "<input type='text' name='name_igr' id='name_igr_" + num_receita + "' placeholder='Nome do Ingrediente' />";
    code = code + "<input type='number' name='unit_igr' id='unit_" + num_receita + "' placeholder='Unidade' min='0' max='9999' step='0.1' />";
    code = code + "<input type='number' name='qtde_igr' id='qtde_igr_" + num_receita + "' placeholder='Quantidade' min='0' max='9999' step='1' />";
    $("#ingrediente").append(code);
    $("#num_rec").val(num_receita);
}
function add_imagens() {
    var num_img = parseInt($("#num_img").val());
    var code = "";
    num_img++;
    code = "<div class='title'>Imagen " + num_img + "</div>";
    code = code + "<input type='file' name='name_img' id='name_img_" + num_img + "' placeholder='inserir imagem' />";
    $("#imagens").append(code);
    $("#num_img").val(num_img);
}


function validDate() {
    var filtroData = /\d{2}\/\d{2}\/\d{4}/;
            if (filtroData.test($('#date').val()))
    {
        var dataAtual = new Date();
        var dataNascimento = $('#date').val();
        var dataArr = dataNascimento.split("/");

        var anoN = parseInt(dataArr[2]), mesN = parseInt(dataArr[1]), diaN = parseInt(dataArr[0]);
        var anoA = parseInt(dataAtual.getFullYear()), mesA = parseInt(dataAtual.getMonth()) + 1, diaA = parseInt(dataAtual.getDate());

        if ((diaN > 0 && diaN <= 31) && (mesN > 0 && mesN <= 12))
        {
            if (anoA >= anoN) //se data atual eh mais recente
            {
                var anos = anoA - anoN;

                if (mesA == mesN) //tem q testar dia
                {
                    if (diaA < diaN)
                    {
                        anos -= 1;
                    }
                }
                else if (mesA < mesN) //nao fez aniversario
                {
                    anos -= 1;
                }

                if (anos >= 13 && anos <= 120)
                {
                    alert("Usuario tem: " + anos + " anos");
                }
                else
                {
                    alert("Vc deve ter de 18 a 120 anos");
                    return false;
                }
            }
            else
            {
                alert("Data de nascimento futura");
                return  false;
            }
        }
    }
    else
    {
        alert("Data incorreta");
        return  false;
    }
}




function exportRecipe() {
    var xml = "";
    xml = '<?xml version="1.0" encoding="UTF-8"?>< !DOCTYPE recipe PUBLIC "-//Happy-Monkey//DTD RecipeBook//EN""http://www.happy-monkey.net/recipebook/recipebook.dtd" > \n < recipe > ';
    xml = xml + "\t\n<title>" + $("#titleRecipe").text() + "</title>";
    xml = xml + "\n\t<recipeinfo>";
    xml = xml + "\n\t\t<author>" + $("#author").val() + "</author>";
    xml = xml + "\n\t\t<yield>" + $("#yield").val() + "</yield>";
    xml = xml + "\n\t\t<preptime>" + $("#preptime").val() + "</preptime>";
    xml = xml + "\n\t</recipeinfo>";
    xml = xml + "\n\t<ingredientlist>";
    $("#ingredients li").each(function(index) {
        xml = xml + '\n\t\t<ingredient>' + $(this).text() + '\n</ingredient>';
    });
    xml = xml + "\n\t</ingredientlist>";
    xml = xml + "\n\t<preparation>";
    $("#instructions li").each(function(index) {
        xml = xml + ' ' + $(this).text() + "\n";
    });
    xml = xml + "\n\t</preparation>";
    xml = xml + "\n</recipe>";
    $("#display_xml").val(xml);
    $("#html_content").remove();

}

function fontChange() {
    if ($("#font").val() == "diminuir") {
        $("body").css("font-size", "15px");
        $("a#changefonts").text("Aumentar Fonte");
        $("#font").val("aumentar");
    } else if ($("#font").val() == "aumentar") {
        $("body").css("font-size", "20px");
        $("a#changefonts").text("Diminuir Fonte");
        $("#font").val("diminuir");
    }

}

function insertComment() {
    var name = $("#name").val();
    var comment = $("#comment").val();
    if(name.length == 0){
        alert("Insira o Nome");
    }
    else if(comment.length ==0){
        alert("Insria um Coment\ário")
    }
    else{
        $("#coments").prepend('<div class="coment"><p class="coment-author">' + name + '</p><p class="comment-writer">' + comment + '</p><p>nota: 3,5</p></div>');
        $("#name").val("");
        $("#comment").val("");
        
    }
}

function getUrl() {
    var parameter = document.URL.split('?');
    return parameter[1];
}

function displayXml() {
    var site = getUrl();
    $("#html_content").load(site + " .recipes");
}

$(function(){
    var availableTags = ["Bolo",
                        "Paes",
                        "Tortas",    
                        "Cadastro de Receita",
                        "Cadastro de Usuario",
                        ];
    $("#main-search").autocomplete({
      source: availableTags
    });
});